From: Matthew Cather Date: Tue, 9 Sep 2025 07:32:18 +0000 (+0200) Subject: uht: fix reference counting issue X-Git-Url: http://git.openwrt.org/%22https:/collectd.org//%22/%22https:/collectd.org/%22?a=commitdiff_plain;h=f88f78e9b691ddbefb1fc8af53c7f26a0db12fc0;p=project%2Fufp.git uht: fix reference counting issue `__reader_get_value` only ever returns a new object so the `ucv_get` is not needed and adds an extra reference to the object. Signed-off-by: Matthew Cather Signed-off-by: Felix Fietkau --- diff --git a/src/ucode.c b/src/ucode.c index 5b06a54..362505a 100644 --- a/src/ucode.c +++ b/src/ucode.c @@ -110,13 +110,13 @@ __reader_get_value(uc_vm_t *vm, struct uht_reader *r, uint32_t attr, bool dump) if (type == UHT_HASHTBL) ucv_object_add(val, hash_key, ucv_boolean_new(true)); uht_for_each(r, iter, attr) - ucv_object_add(val, iter.key, ucv_get(__reader_get_value(vm, r, iter.val, dump))); + ucv_object_add(val, iter.key, __reader_get_value(vm, r, iter.val, dump)); return val; case UHT_ARRAY: val = ucv_array_new(vm); i = 0; uht_for_each(r, iter, attr) - ucv_array_set(val, i++, ucv_get(__reader_get_value(vm, r, iter.val, dump))); + ucv_array_set(val, i++, __reader_get_value(vm, r, iter.val, dump)); return val; }